package com.nine.service;

import java.util.List;

import com.nine.entity.Account;
import com.nine.entity.ConfirmPaycode;
import com.nine.entity.Order;
import com.nine.entity.Orderitems;
import com.nine.entity.Package;
import com.nine.entity.Product;
import com.nine.entity.Users;
import com.nine.entity.Vips;

public interface OrderService {
	/**
	 * 获取所有vip类型
	 * @return 集合
	 */
	public List<Vips> getAllVips();
	/**
	 * 验证用户是否存在，是否已是会员
	 * @return 用户
	 */
	public Users getOneUser(String username);
	/**
	 * 根据账户id获取账户信息
	 * @param 账户id
	 * @return 账户信息
	 */
	public Account getOneAccount(int accountid);
    /**
     * 根据用户和密码查询用户是否存在
     * @param 用户名跟密码实体
     * @return
     */
    public Account getOneAccount(ConfirmPaycode confirmPaycode);
    /**
     * 通过vip类型获取单条vip
     * @param viptype
     * @return
     */
    public Vips getOneVip(String viptype);
    /**
     * 通过用户名更改会员类型以及会员单号
     * @param user
     * @return
     */
    public int changeVipOrder(Users user);
    /**
     * 获取所有的套餐列表
     * @return
     */
    public List<Package> getAllPackage(Package package1);
    /**
     * 根据条件模糊查询所需要的商品
     * @param product1
     * @return
     */
    public List<Product> getSomethingProduct(Product product1);
    /**
     * 添加订单
     * @param order
     * @return
     */
    public int addShopping(Order order);
    /**
     * 获取所有订单
     * @return
     */
    public List<Order> getAllOrders();
    /**
     * 添加单条订单
     * @param orderitems
     * @return
     */
    public int addSingleShopping(Orderitems orderitems);
    /**
     * 根据住建删除购物车内容
     * @param id
     * @return
     */
    public int delShopping(Integer id);
    /**
     * 根据订单id修改订单状态
     * @param order
     * @return
     */
    public int updateOrderState(Order order);
}

